Boutons intelligents
Contrôles/éléments XML

Appel d’API <APICall>

Ce contrôle permet aux agents de :

  • Envoyez des informations à une base de données externe via l’API.

  • Recevez des informations en retour de cette source.

Note:

  • Le protocole de connexion pour le contrôle <APICall> est HTTP.

  • Ce contrôle nécessite une intégration bidirectionnelle, ce qui signifie que l’API doit être préparée (point de terminaison créé). Ce point de terminaison d’API doit être capable de gérer les variables (paramètres de requête) reçues des scripts Smart Button.

Configuration

Vous pouvez configurer APICall dans l’éditeur de boutons intelligents à l’aide de l’API Call XML Generator ou de XML.

Configuration avec l’appel d’API XML Generator

La façon la plus simple d’utiliser la fonctionnalité APICall consiste à configurer à l’aide du générateur XML.

Pour configurer avec le générateur XML :

  1. Ouvrez l’éditeur de boutons intelligents pour créer un script.

  2. Cliquez sur Appel d’API <ApiCall>.

  3. Configurez les attributs.

    Attribut

    Description

    URL Entrez l’adresse URL du point de terminaison de l’API.
    Nom de la variable

    entrez le nom de la variable qui contiendra la réponse de l’API en tant que réponse de l’API.

    Les Smart Buttons Travelport ne peuvent accepter et consommer les réponses du point de terminaison de l’API que dans les formats suivants :

    • Corde

    • Tableau JSON de chaînes

    • Tableau JSON de la paire Valeur/Clé (string vs.string) (voir l’exemple de réponse à la fin de cette rubrique)

    Voir l’exemple du fichier à la fin de cette rubrique.

    Variables (paramètres de demande)

    Entrez les noms des variables que vous souhaitez envoyer via l’API à une base de données externe.

    S’il y a plus d’une variable, séparez chaque variable par un point-virgule (;). Par exemple:

    • PCC; Compagnie aérienne; PassengerName ou entre crochets :

    • [PCC] ; [Compagnie aérienne] ; [Nom du passager]

    Méthode HTTP

    Sélectionnez la méthode HTTP à utiliser pour la requête :

    • GET : les variables sont passées en tant que paramètres de requête

    • POST : les variables sont passées sous forme de contenu HTTP dans un format spécifique

    Autorisation Spécifiez les détails de l’autorisation à votre API.
    Type

    Sélectionnez le type d’autorisation :

    • Basique
      Lorsqu’un agent souhaite envoyer des informations d’identification d’authentification au serveur. Lorsque cette option est sélectionnée, vous devez spécifier un identifiant et un mot de passe pour votre point de terminaison d’API. Lorsque vous soumettez le formulaire, votre identifiant et votre mot de passe sont cryptés à l’aide d’une variante de Base64.

    • Clé d’en-tête
      Lorsque cette option est sélectionnée, vous devez spécifier un nom et une valeur d’en-tête.

      • Nom de l’en-tête
        Lorsque l’éditeur est utilisé, la valeur de l’en-tête est chiffrée (pour afficher la valeur dans le code XML aux agents) et s’affiche entre accolades {}.

        Par exemple : KeyAuthHeaderValue="{a3Nrc2pmb2l1MzI5dTMyb2l1MzJ1Zmg1} ».

        Si vous ne souhaitez pas que la valeur d’en-tête soit chiffrée, n’utilisez PAS l’éditeur. Au lieu de cela, entrez l’attribut KeyAuthHeaderValue directement dans le code XML à afficher non chiffré. Par exemple : KeyAuthHeaderValue="ABCYZV.3452ZDf ».

      • Valeur d’en-tête
        Entrez la valeur En-tête, par exemple, AuthToken.

    • Aucune autorisation
      Si l’API n’a pas d’autorisation, sélectionnez cette option.

  4. Cliquez sur SOUMETTRE.

Configuration avec XML

Si vous ne souhaitez pas utiliser le générateur XML, vous pouvez saisir le XML directement dans l’éditeur de boutons intelligents Travelport.

Pourboire! Vous pouvez ajouter le code XML directement à l’éditeur en faisant glisser et en déposant le bouton bleu de ce contrôle.

Il s’agit de la structure de l’élément XML APICall.

Copier
<ApiCall VarName="" Parameters="" Method="GET" AuthType="HeaderKey" 
KeyAuthHeaderName="" KeyAuthHeaderValue="" AuthorizationHeaderValue=""></ApiCall>

Cette table contient tous les attributs et valeurs d’attributs possibles.

Attribut

Description

VarName Spécifiez une variable, par exemple, CustomerNumber
Paramètres

Entrez les variables séparées par un point-virgule. Par exemple : Prix ; PaxName ; PCC

Méthode

PUBLIER

AVOIR

Type d’authentification

Basique

Clé d’en-tête

Anonyme

AutorisationHeaderValeur Si votre type d’autorisation est De base, entrez vos données d’autorisation
KeyAuthHeaderName Si votre type d’autorisation est HeaderKey, entrez le nom de l’en-tête d’autorisation de votre point de terminaison d’API.
KeyAuthHeaderValue Si votre type d’autorisation est HeaderKey, entrez la valeur de l’en-tête d’autorisation de votre point de terminaison d’API.
Exemple 1

Structure XML APICall pour HTTP Méthode : GET, Type d’autorisation : HeaderKey, code généré par l’interface graphique APICall (HeaderAuthHeaderValue est crypté)

Copier
<ApiCall VarName="TotalBalance" Url="https://myAPI/API/CustomerBalance" Parameters="CustomerNumber;CurrentPCC;PNRNumber" Method="GET" AuthType="HeaderKey" KeyAuthHeaderName="AuthToken" KeyAuthHeaderValue="{OTM0NzA5MjM0ODA5MG5ramZkaGtzamZkaA==}" />
Exemple 2

Structure XML APICall pour Méthode Http :POST, Type d’autorisation : Basique, code généré par l’interface graphique APICall (AuthorizationHeaderValue est crypté)

Copier
<ApiCall VarName="InvoiceYesNo" Url="https://myAPI/demo/CheckInvoice" Parameters="CustomerNumber" Method="POST" AuthType="Basic" AuthorizationHeaderValue="Basic VXNlcjIzNDppb2V1cm9pdWVv" />

Réponse de l’API

L’exemple suivant est une réponse d’API qui peut être acceptée et consommée par les Smart Buttons.

Copier
-JSON string array of key value pair
JSON
[
{
"Key": "Pcc",
"Value": "73XV"
},
{
"Key": "CorporateCode", "Value": "342534567"
}
]

Exemples

APICall peut être utilisé par n’importe quelle API. Cependant, les exemples suivants montrent comment APICall peut être utilisé dans diverses situations.

Commission pour une compagnie aérienne spécifique

Les informations sur les commissions de chaque compagnie aérienne sont stockées dans votre système de mid-office.

Vous pouvez créer un script qui lit les tarifs des compagnies aériennes utilisés dans le calcul et applique la commission correcte. Avec le contrôle APICall, vous pouvez interroger votre système de mid-office pour la commission d’une compagnie aérienne spécifique dans un fichier PNR/Booking. L’API du système de bureau intermédiaire peut renvoyer les informations.

Validation du solde client

Avant d’émettre un billet, vous pouvez vérifier si votre solde client vous permet d’émettre le billet.

En règle générale, vous devez vérifier le solde manuellement en ouvrant votre système de back-office et en comparant le prix du billet avec le solde client. Par exemple, vous regardez dans le PNR/Fichier de réservation que le prix du billet est de 100 EUR, puis vous allez dans le système de back-office pour vérifier le solde du client. Et si le solde du client est inférieur au prix du billet, vous ne pouvez pas émettre le billet.

Avec les Smart Buttons et le contrôle APICall, cette fonction peut être automatisée. Par exemple, vous pouvez envoyer les informations suivantes et récupérer le solde client.

Paramètres de requête de variables (informations que vous pouvez envoyer à l’API) :

  • Numéro de client ; PCC actuel

  • Nom de la variable (informations que vous recevez en retour de l’API) : CustomerBalance

Ces variables sont des exemples ; vous pouvez définir les éléments que vous souhaitez envoyer via l’API ainsi que les noms des variables.

Émission automatisée des factures

L’émission manuelle de factures dans votre système de back-office peut être automatisée avec APICall.

  • Paramètres de requête de variables : PaxName ; Numéro de client ; FiledFareAmount ; Compagnies aériennes

  • Nom de la variable : InvoiceNumber

Avec ce contrôle, vous pouvez envoyer des informations telles que PaxName, CustomerNumber, FiledFareAmount et des informations sur les compagnies aériennes. L’API peut ensuite émettre la facture et renvoyer les informations avec le numéro de facture.